iT邦幫忙

2026 iThome 鐵人賽

DAY 17
0
AI 自動化

30 天打造我的 AI 自動化工作流系列 第 17 篇

Day 17|把前面全部組起來!打造 AI 客服訊息自動分類系統

  • 分享至 

  • xImage
  •  

做到 Day 16,我們已經分別練習過很多 n8n 的功能。

從一開始的 Trigger、JSON,到後來加入 AI、Webhook、Google Sheets、Email、Switch Node,昨天又處理了 AI 輸出格式不穩定的問題。

所以今天我想先不學新的 Node,而是做一件更重要的事:

把前面學過的東西全部組合起來,完成第一個比較完整的 AI 自動化 Workflow。

今天要做的是:

AI 客服訊息自動分類系統


今天想解決什麼問題?

假設今天有一個網站,每天會收到很多使用者訊息。

內容可能像:

「系統現在完全不能登入!」

也可能是:

「請問我要怎麼修改密碼?」

或是:

「希望之後可以增加深色模式。」

如果全部都要人工閱讀,再決定要怎麼處理,訊息一多就會花很多時間。

所以今天希望讓 AI 先幫忙完成:

閱讀 → 分類 → 摘要 → 分流 → 執行對應動作


今天的完整 Workflow

這次把前幾天做過的功能全部接起來:

使用者訊息
     ↓
  Webhook
     ↓
    AI
     ↓
分類 + 摘要
     ↓
 Switch Node
 ↙     ↓       ↘
urgent question suggestion
  ↓       ↓        ↓
Email   Sheets   Sheets

AI 負責理解文字。

Switch Node 負責根據 AI 的分類決定下一步。

Email 和 Google Sheets 則負責真正執行動作。

https://ithelp.ithome.com.tw/upload/images/20261001/201788350Ax69wNkQp.png

圖 1 AI 客服訊息自動分類系統完整 Workflow


Step 1:Webhook 接收使用者訊息

首先從 Webhook 開始。

今天讓外部系統傳入的資料保持簡單:

{
  "text": "系統現在完全無法登入,請盡快處理!"
}

Webhook 收到後,就會啟動整個 Workflow。

這部分其實就是 Day 10 做過的內容。

當時只是單純測試「外部資料能不能進來」,但現在 Webhook 已經正式變成整套系統的入口。

https://ithelp.ithome.com.tw/upload/images/20261001/20178835zsOtrvsq39.png

圖 2 Webhook 接收使用者訊息


Step 2:把訊息交給 AI

接著把 Webhook 收到的 text 傳給 AI。

這次不只要求 AI 分類,也希望順便產生一段簡短摘要。

可以使用昨天修改過的 Prompt:

你是一個客服訊息分類器。

請分析使用者輸入的訊息。

分類只能選擇以下其中一種:

urgent:
系統無法使用、嚴重錯誤,或需要立即處理的問題。

question:
一般問題、操作方式詢問,或不緊急的系統問題。

suggestion:
新功能建議、改善意見或使用者提出的想法。

請輸出:
1. category:urgent、question 或 suggestion
2. summary:用一句話簡短整理使用者的問題
3. notify:如果 category 是 urgent,輸出 true,否則輸出 false

不要輸出其他說明。

使用者輸入:
{{ $json.body.text }}

這裡其實一次用到了前面學到的 Prompt、Expression 和 JSON。

https://ithelp.ithome.com.tw/upload/images/20261001/2017883590jA9LSZNP.png

圖 3 AI 分類與摘要 Prompt


Step 3:讓 AI 產生固定資料

如果輸入:

「系統現在完全無法登入,請盡快處理!」

希望 AI 最後產生類似:

{
  "category": "urgent",
  "summary": "使用者目前無法登入系統",
  "notify": true
}

這比只輸出:

urgent

更有用了。

因為現在我們一次得到三個資訊:

category 可以拿來分流。

summary 可以存到 Google Sheets 或放進 Email。

notify 則可以表示是否需要通知。

這就是昨天 Structured Output 概念真正派上用場的地方。


Step 4:交給 Switch Node

接下來 Switch Node 不需要理解使用者到底說了什麼。

它只需要看:

category

如果:

category = urgent

就走第一條路。

如果:

category = question

走第二條。

如果:

category = suggestion

走第三條。

也就是:

           AI
            ↓
        category
            ↓
         Switch
       ↙    ↓    ↘
 urgent  question  suggestion

https://ithelp.ithome.com.tw/upload/images/20261001/20178835aFLwPLeLG6.png

圖 4 根據 AI category 進行三種分流


Step 5:urgent → Email

如果 AI 判斷:

category = urgent

就自動寄出 Email。

例如 Email 可以設定成:

主旨:
【緊急通知】收到需要立即處理的問題

內容:
收到一筆緊急使用者訊息。

AI 摘要:
{{ AI 產生的 summary }}

請盡快確認問題。

這裡最大的改變是:

Email 內容也可以直接使用 AI 產生的摘要。

所以收到通知的人不一定需要先閱讀完整原文,就可以先知道大概發生什麼事情。


Step 6:question / suggestion → Google Sheets

另外兩種類別目前先存到 Google Sheets。

表格可以設計成:

Original TextCategorySummary
請問如何修改密碼? question 使用者詢問密碼修改方式
希望增加深色模式 suggestion 使用者建議新增深色模式

這樣之後就可以直接從表格查看:

使用者說了什麼?

AI 判斷是哪一類?

AI 整理的重點是什麼?

https://ithelp.ithome.com.tw/upload/images/20261001/20178835U49k9ek9x2.png

圖 5 AI 分類結果自動儲存至 Google Sheets


Step 7:三種類型都測一次

做到這裡還不能直接說完成。

因為有三條路線,所以三條都要測試。

可以準備:

測試內容預期分類預期動作
系統完全無法登入 urgent Email
請問如何修改密碼? question Google Sheets
希望增加深色模式 suggestion Google Sheets

先測試:

系統完全無法登入!

確認:

AI → urgent → Email

再測:

請問我要去哪裡修改密碼?

確認:

AI → question → Google Sheets

最後:

希望未來可以增加深色模式。

確認:

AI → suggestion → Google Sheets

如果三種都走到正確的位置,今天的 Workflow 就算完成了。


從 Day 6 回頭看,差很多

Day 6 第一次建立 Workflow 時,其實只有:

Manual Trigger → 測試資料

當時主要只是理解 Node 是怎麼連接的。

但現在已經變成:

Webhook → AI → Structured Output → Switch → Email / Google Sheets

而且這些 Node 不是單純接在一起而已,每一個都有自己的工作:

Webhook 負責接收資料。

AI 負責理解、分類與摘要。

Switch 負責控制流程。

Email 負責通知。

Google Sheets 負責保存結果。

這也是我做到今天才比較明顯感受到的地方:

自動化不是靠某一個很厲害的 Node,而是把不同工具組合成一個完整流程。


今天遇到的一個問題

把前面的功能全部接起來之後,Workflow 明顯比以前複雜很多。

其中只要一個地方出錯,後面的 Node 就可能全部無法執行。

例如:

Webhook 沒收到 text

↓

AI 沒有資料可以分析

↓

category 沒有產生

↓

Switch 無法正確分流

所以今天我也開始學到另一件很重要的事情:

Workflow 出錯時,不要一次檢查整條流程,而是從前面的 Node 開始,一個一個確認 Input 和 Output。

例如先確認 Webhook Output,再看 AI Output,最後才看 Switch。

這樣通常比較容易找到問題。


今日小結

今天沒有加入新的工具,而是把前 16 天學到的內容真正組合起來。

最後完成:

使用者傳送訊息 → Webhook 接收 → AI 自動理解 → 分類與摘要 → Switch 自動分流 → Email 通知或 Google Sheets 儲存

這也是目前做到最完整的一個 AI Workflow。

但實際測試之後,我也發現一個新的問題:

如果其中一個 Node 執行失敗,整個 Workflow 怎麼辦?

例如 AI API 暫時出錯、資料格式不對,或 Google Sheets 寫入失敗,都可能讓流程中斷。


上一篇
Day 16|AI 怎麼老是不照格式回答?讓輸出變得更穩定
系列文
30 天打造我的 AI 自動化工作流 共 17 篇
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言